home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / vser11 / vser.txt < prev   
Encoding:
Text File  |  1995-02-26  |  24.6 KB  |  566 lines

  1.  
  2.  
  3.  
  4.     ╔════════════════════════════════════════════════════════════════════╗
  5.     ║                                                                    ║
  6.     ║                                                                    ║
  7.     ║                     Visible::Serialization(tm)                     ║
  8.     ║                     --------------------------                     ║
  9.     ║                developers' serialization utilities                 ║
  10.     ║                                                                    ║
  11.     ║                                                                    ║
  12.     ║     append serial numbers (or other identifiers) to .exe files     ║
  13.     ║                                                                    ║
  14.     ║                                                                    ║
  15.     ║                                                                    ║
  16.     ║                     a product of RCCO Research                     ║
  17.     ║                                                                    ║
  18.     ║                                                                    ║
  19.     ╚════════════════════════════════════════════════════════════════════╝
  20.  
  21.  
  22.  
  23. Capabilities
  24. -------------
  25. Visible::Serialization(tm) is a utilities set primarily intended for
  26. developers so that they may append serial numbers (or other identifiers) to
  27. .exe files, create and/or increment such serial numbers, and search for and
  28. verify/display serializations.  Users other than developers may use
  29. Visible::Serialization to initialize purchased software applications with
  30. ownership, security-related, or other identifying marks.
  31.  
  32. A unique serial number going out with each copy of an application affords
  33. the developer with a possible opportunity to identify, if need be, the
  34. registered client of a particular copy.  The end-user is normally unaware
  35. of the existence of such a mark, its location, its method of placement or
  36. the method of reading/verifying.  Its absence or modification may provide
  37. evidence of tampering.
  38.  
  39. Visible::Serialization may be used with most traditional MS-DOS or Windows
  40. executables, including those created with CA-Clipper, Borland Turbo Pascal,
  41. QuickBASIC, PowerBasic, Visual Basic(tm) for Windows or DOS, FoxPro, Clarion,
  42. C/C++, etc.
  43.  
  44. The chief advantages, aside from the utilities themselves, are both low cost
  45. and method of acquiring.  The copy included herewith is a fully-functional
  46. evaluation copy available easily and universally through the user-supported
  47. software marketplace.
  48.  
  49.  
  50.  
  51.  
  52. The Visible::Serialization package
  53. -----------------------------------
  54. This set of utilities consists of the following primary files:
  55.  
  56.          CREATESN.EXE  (create or increment a serialno.dat file)
  57.          APPENDSN.EXE  (append a serial string in serialno.dat to an .exe)
  58.          SEARCHSN.EXE  (search/verify an .exe for a serial string)
  59.  
  60. Also included are:
  61.  
  62.          SN2A.BAT      (sample batch file for production of successive
  63.                            serializations on distribution diskettes)
  64.          SERIALNO.DAT  (sample numerical serial number data file for
  65.                            reading by APPENDSN.EXE; not needed or
  66.                            necessarily distributed with applications)
  67.          SAMPLE.EXE    (sample c file .exe on which to practice append
  68.                            and search sessions)
  69.  
  70.  
  71.  
  72.  
  73. Using Visible::Serialization
  74. -----------------------------
  75. CreateSN.exe
  76. -------------
  77. You may use CreateSN.exe to create an ASCII text file called serialno.dat
  78. containing a beginning numerical sequence or an alphanumeric string to be
  79. used by the AppendSN.exe utility.  You may create and use both a numerical
  80. serial number (which can be incremented by subsequent runs of CreateSN.exe)
  81. or an alphanumeric string (including letters, digits, punctuation marks and
  82. spaces).
  83.  
  84. If there is in the working directory for the project at hand a file called
  85. serialno.dat, CreateSN.exe will attempt to increment a numerical serial
  86. number up to nine (9) digits by one number.  For example, if the serialno.dat
  87. file contains the number 10001, running CreateSN from the command line will
  88. change serialno.dat to 10002.  If serialno.dat contains characters other
  89. than digits, or contains a digital sequence greater than 9 in length, or
  90. is a numerical serial number file created or modified by a text editor
  91. (rather than CreateSN.exe itself), a message will report that the sequence
  92. cannot be incremented.
  93.  
  94. If a serialno.dat file is not found in the current directory, CreateSN.exe
  95. will prompt you for a beginning serial number.  You may enter either a
  96. numerical sequence or any alphanumeric string up to 34 characters in length.
  97. Only if you intend to have CreateSN increment the sequence later must you
  98. limit the length and content to 9 digits or less, with no letters, spaces or
  99. punctuation marks.
  100.  
  101. After appropriate entry of a new sequence or an increment of an existing
  102. sequence, CreateSN.exe will indicate successful completion and display the
  103. new serialno.dat file typed to the screen for verification.  The serialno.dat
  104. is now ready for use by AppendSN.exe.
  105.  
  106.  
  107.  
  108. AppendSN.exe
  109. -------------
  110. To use AppendSN.exe, you type at the DOS prompt:
  111.  
  112.                         appendsn <filename.exe>
  113.  
  114. and press <enter>, where <filename.exe> is the actual copy of the .exe file
  115. you wish to serialize.  We provide a practice file in this package,
  116. sample.exe, for purposes of trying the append and search/read operations.
  117. (You may wish to retain an unchanged copy of the original sample.exe for
  118. evaluating various serialization sequences and the resulting appends.)
  119.  
  120. If there exists in the current directory an appropriate serialno.dat file,
  121. AppendSN.exe will read the sequence therein.  If the sequence consists of
  122. 34 or less characters in length, AppendSN.exe will append that sequence to
  123. the end of the .exe file named as the required command line parameter.  (If
  124. serialno.dat contains a sequence in excess of 34 characters, an appropriate
  125. message will display, accompanied by an exit to the system prompt.)
  126.  
  127. For example, if the serialno.dat file contains the sequence of digits 10002,
  128. and you execute
  129.  
  130.                         appendsn sample.exe <enter>
  131.  
  132. then 10002 will be appended to the end of sample.exe.  Should the serialno.dat
  133. file contain the sequence:  10002 John C. Smith, then that exact sequence
  134. will be appended to sample.exe.  A serialno.dat file containing "Property of
  135. XYZ Corp." will cause that string to be appended to sample.exe.
  136.  
  137. You may use as a filename for appending purposes a complete pathname (up to
  138. 80 characters); i.e.,
  139.  
  140.                         appendsn a:\subdir\sample.exe <enter>
  141.  
  142. DOS wildcard characters (i.e., *.exe) are not permitted, however; single
  143. filenames must be used with each append.  The serialno.dat file must be
  144. located in the directory that is current, not the target directory.
  145.  
  146. After successful completion of the append, AppendSN.exe will note that with
  147. an appropriate message.
  148.  
  149.  
  150.  
  151. SearchSN.exe
  152. -------------
  153. The third utility in the Visible::Serialization set is SearchSN.exe.  You
  154. may use SearchSN.exe to search/verify an .exe for a serial string.  If you
  155. take the original, unserialized copy of sample.exe and type
  156.  
  157.                         searchsn sample.exe <enter>
  158.  
  159. you should receive a message stating "Serial number not found."
  160.  
  161. If the .exe file has been initialized with a serial number sequence by
  162. using AppendSN.exe (as above), then the results will be a partial dump
  163. of that area of the .exe showing our program name followed by the appended
  164. serialization sequence.  There may also be a few garbage characters or
  165. other text displayed as well, but these should not interfere with the reading
  166. or verification of the true serialization sequence.  There are, however,
  167. infrequent instances in which an executable's serialization sequence may be
  168. improperly displayed; see the appropriate paragraphs on SearchSN.exe in the
  169. Notes & Precautions section, below.
  170.  
  171. You may use as a filename for searching purposes a complete pathname (up to
  172. 80 characters); i.e.,
  173.  
  174.                         searchsn a:\subdir\sample.exe <enter>
  175.  
  176. DOS wildcard characters (i.e., *.exe) are not permitted, however; single
  177. filenames must be used with each search.
  178.  
  179. You may also view the serial number sequence with a hex editor/viewer; search
  180. for the key string "Visible::Serialization."  If you intend to utilize the
  181. serial number programmatically in an application -- that is, reading it for
  182. display or verification purposes on the end-user's machine -- you will also
  183. search for the same key string and read the requisite succeeding bytes for
  184. the serial number.  Please note that a registered copy, if purchased, will
  185. not include the unregistered copy notice and that its absence will affect the
  186. number of bytes to be read before locating the serialization string itself.
  187.  
  188.  
  189.  
  190.  
  191. The serialno.dat file
  192. ----------------------
  193. You may also create/modify a non-incrementing serialno.dat file with your
  194. text editor; if a numerical-type serial sequence is to be incremented with
  195. CreateSN.exe, please use CreateSN.exe to create the file initially (see
  196. more about this in the Notes & Precautions section, below).
  197.  
  198. A non-incrementing serialno.dat must be a plain ASCII text file (no
  199. extraneous characters) consisting of one line only, with no more than 34
  200. characters (including letters, digits, punctuation marks and spaces) in the
  201. one line; it must be left-justified within serialno.dat.  It should appear
  202. similarly as follows:
  203.  
  204.  
  205. 10002 John C. Smith
  206.  
  207.  
  208. (or)
  209.  
  210. John C. Smith
  211.  
  212.  
  213. (or)
  214.  
  215. A123 456-78M
  216.  
  217.  
  218. (or)
  219.  
  220. Property of XYZ Corp.
  221.  
  222.  
  223. etc.
  224.  
  225. within the format limitations described above.
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232. Production Use
  233. ---------------
  234. In order to use Visible::Serialization in producing multiple copies of
  235. sequentially serialized executables, there are several possible steps to
  236. consider.
  237.  
  238. If the distribution diskette will simply contain an unarchived copy of your
  239. .exe, you may utilize a batch file similar to the included sample SN2A.BAT.
  240. SN2A.BAT is fairly self-explanatory, assuming the disks to be initialized are
  241. going to be in Drive A: of your production machine and are already made up in
  242. the needed quantity.  Modify or create your own SN2?.BATs as needed; make
  243. sure the Visible::Serialization executable files are in your path or the
  244. complete pathname of those files is indicated in SN2A.BAT.  Successive runs
  245. of SN2A.BAT will initialize each stock diskette in turn.
  246.  
  247. If your intended .exe is to be placed in a compressed archive file for
  248. distribution purposes, you may create a batch file that will initialize
  249. the .exe with the next serial number, update the archive each time, and copy
  250. it to the next distribution diskette.  Often, a firm will have a quantity of
  251. distribution disks made up containing everything except one final archive
  252. file which will contain only the initialized .exe file; then, in sequence,
  253. a batch file will execute the initialization on a virgin copy of the .exe,
  254. compress it in its own archive, and lastly, copy it to the next disk where
  255. the appropriate preprinted label (if it indicates a serial number) may be
  256. applied.
  257.  
  258. Our own firm often copies the serialno.dat file to the root directory of
  259. the distribution diskette.  We include a note in the readme.txt that informs
  260. the client:
  261.  
  262.          "The serial number registered in the user's name is found in
  263.          the file SERIALNO.DAT.  It is provided on the disk for your
  264.          recordkeeping purposes only."
  265.  
  266. It also provides a means for our staff or external agents to make a quick
  267. check that the serial number matches the one indicated on the disk label or
  268. invoice, should the need arise.  Since serialno.dat is an ASCII text file,
  269. one may read it quickly by simply keying:
  270.  
  271.                         type [a:\]serialno.dat <enter>
  272.  
  273.  
  274. There are many possible alternatives to producing initialized copies for
  275. distributions; most development firms will create their own preferred
  276. operation appropriate for an application.  The above descriptions are only
  277. possible suggestions and are not meant to preclude other means for utilizing
  278. the Visible::Serialization program.
  279.  
  280.  
  281.  
  282.  
  283.  
  284. Notes & Precautions
  285. --------------------
  286. Always work with COPIES of your original .exe files.  You may wish to
  287. periodically verify with SearchSN.exe the production copies of your
  288. executables to ascertain that the serialization sequence is properly
  289. written and readable.
  290.  
  291. It is possible to make multiple appends to the same .exe; the SearchSN.exe
  292. utility will attempt to locate and display only the first instance of a
  293. serialization sequence.
  294.  
  295. AppendSN.exe can be used to append the contents of serialno.dat to the end
  296. of file types other than .exe.  You should well test and consider the
  297. intent and consequences of any such append.  The SearchSN.exe utility can
  298. have difficulty in locating the serial sequence in this or other rare
  299. circumstance.
  300.  
  301. If you obtain a result when running SearchSN.exe that you feel to be
  302. inaccurate, empty (reset) your software disk cache (i.e., if using
  303. smartdrv.exe, run smartdrv /r) and execute the search again.  An instance
  304. of this might be that of a false return of a serial sequence that does not
  305. exist in a recently copied uninitialized file; this occurrence may be evident
  306. particularly when using the Norton cache programs.  Try resetting the cache
  307. as mentioned and run SearchSN.exe again.
  308.  
  309. There may be infrequent occasions with certain sizes of executables that
  310. SearchSN.exe will display only partial renderings of the serialization
  311. string.  This occurs (very rarely) because of the method of searching that
  312. SearchSN.exe uses:  different level searches are performed by reading
  313. fixed-length byte segments from the subject file into buffers upon which the
  314. search is performed and the succeeding display made.  It is possible,
  315. therefore, that a serialization string may span across buffer boundries and
  316. only be partially displayed.  This occurrence does not mean the serialization
  317. string was improperly written during the append process; a followup search
  318. with a hex editor/viewer will most likely ascertain that the serialization
  319. exists properly and in its entirety.
  320.  
  321. If you have created or modified a numerical-type serial sequence in a
  322. serialno.dat with your text editor (rather than with CreateSN.exe), and
  323. then attempt to increment the number with CreateSN.exe, an error message
  324. "Cannot increment current serial number" may occur.  You should then
  325. delete the serialno.dat file and re-create it using CreateSN.exe and the
  326. desired starting number.  You should then be able to increment as needed.
  327.  
  328. You should verify that your applications are fully tested and bugfree before
  329. appending a serial number.  After a prototype append, you will most likely
  330. test again that the application works as it did previously.  In the unlikely
  331. event there are difficulties, we suggest that you restore an original copy
  332. of the application and perform again the testing process, then apply the
  333. append procedure according to the instructions provided in this documenta-
  334. tion.
  335.  
  336.  
  337.  
  338.  
  339.  
  340. Program Requirements
  341. ---------------------
  342. The requirements for running Visible::Serialization include a DOS-compatible
  343. PC with 512k memory.  DOS 3.1 (or later) or Windows 3.x (or later) should be
  344. utilized.
  345.  
  346.  
  347.  
  348.  
  349.  
  350. The Unregistered Evaluation Copy
  351. ---------------------------------
  352. The unregistered version of this program is intended for use in evaluation
  353. situations.  It may be used for ninety (90) days within your own organ-
  354. ization by persons that have knowledge and understanding of the fact that
  355. it is an unregistered evaluation copy.
  356.  
  357. The payment of the $19.95 purchase price for a registered copy of this
  358. program will allow license for a single user to make use of the program for
  359. purposes that are traditionally accepted for software utilities of this
  360. type.  Additional site license fees of $7.50 per user may be paid at the
  361. time of registration, or any time in the future after initial registration
  362. at the then current license fee in effect.  There are no runtime royalties
  363. involved in the distribution of your materials utilizing a duly registered
  364. copy of Visible::Serialization.
  365.  
  366. The license and authorized registration shall not be construed as being
  367. in effect until direct payment has been received by RCCO Research and an
  368. authorized, registered copy has been sent in the registered user's/users'
  369. name(s).
  370.  
  371.  
  372.  
  373.  
  374.  
  375. The Registered Version of Visible::Serialization
  376. -------------------------------------------------
  377. The registered copy performs the same execution as the evaluation copy, only
  378. without the unregistered copy notices.
  379.  
  380. Documentation for the registered version is an on-disk text file, similar to
  381. the present format.
  382.  
  383.  
  384.  
  385.  
  386.  
  387. Licensing Information
  388. ----------------------
  389. This program is licensed and supplied as is, without any warranty.  To the 
  390. extent permitted under applicable law, RCCO Research Associates disclaims 
  391. all warranties, either expressed or implied, with respect to this software 
  392. program, its quality, performance, merchantability, or fitness for any 
  393. particular purpose.
  394.  
  395. In particular, this software program is not guaranteed to prevent or detect
  396. damage to your data or programs.  In no event shall RCCO Research Associates
  397. be liable for any claims for lost profits or any damage, including, but not
  398. limited to, special, incidental, consequential or other damage (including, 
  399. without limitation, damages for loss of business profits, business interrup-
  400. tion, loss of business information, or other pecuniary loss) arising out of
  401. the use of or inability to use this RCCO Research Associates product, even
  402. if RCCO Research Associates has been advised of the possibility of such
  403. damages.  Some states do not allow the exclusion or limitation of incidental
  404. or consequential damages, so the above limitation or exclusion may not apply
  405. to you.  In no case shall RCCO Research Associates's liability exceed the
  406. license fees paid for the right to use the licensed version of the software. 
  407.  
  408. The license agreement and warranty shall be construed, interpreted and
  409. governed by the laws of the state of Tennessee.
  410.  
  411. This software program is protected under the Copyright Laws of the United 
  412. States of America and all applicable International Copyright Conventions.  
  413. Makers and/or users of illegal or unauthorized copies of the registered 
  414. version are subject to prosecution under these laws.
  415.  
  416. The name  Visible::Serialization(tm)  is a trademark of RCCO Research
  417. Associates.  Windows(tm) is a trademark of Microsoft Corporation.  Other
  418. trade names referenced herein are either trademarks or registered trademarks
  419. of their respective companies.
  420.  
  421.  
  422.  
  423.  
  424.  
  425. Registration Notes
  426. -------------------
  427. Registration will obtain a copy of the most recent authorized version and
  428. provide legal authorization for continued use of the program after the
  429. ninety-day (90-day) evaluation period.
  430.  
  431. To obtain a registered copy, you may mail an advance-payment registration
  432. fee of U.S. $19.95 + $2.55 shipping/handling ($7.05 non-U.S. shipping/
  433. handling, $4.05 for Canada) directly to RCCO Research.  Additional users
  434. are $7.50 per user.  Payment is to be made by check or money order only,
  435. please.  We require payment with order so that prices and fees may be kept
  436. as reasonable as possible; this policy has worked well for us in recent
  437. years, as we observe increased registration on products that are reasonably
  438. priced.  For credit card and telephone orders, see the Additional Ordering
  439. Options note below.
  440.  
  441. An invoice will be included with your order, showing the registered serial
  442. number(s) applicable to the purchase.  We can provide a pro forma invoice
  443. to those corporations or institutions that require same before payment can
  444. be issued; shipment will be made promptly upon receipt of payment.  Prices
  445. and/or registration and/or license fees are subject to change without notice.
  446.  
  447. Tennessee clients please include the required 8.5% sales tax on both the
  448. product amount and shipping/handling as mandated by the state.
  449.  
  450. International clients must pay by check or money order in U.S. dollars, drawn
  451. on a U.S. bank or the U.S. branch of an international bank.  Please realize
  452. that international postal money orders are considerably delayed through the
  453. postal systems and may not be the most expedient way of relaying payment.  An
  454. often-used form of payment consists of obtaining a dollar-denominated money
  455. order from the local American Express office which you may then airmail to
  456. us along with your order.  International orders are dispatched promptly
  457. when using a credit card order as outlined below, under Additional Ordering
  458. Options.
  459.  
  460. Please indicate program name and current version number on your order; you
  461. may use the Order.frm file provided with the package or simply send a note or
  462. letter with your name, organization name, address, program name & version,
  463. number of users being licensed, and remittance.  Your comments on our
  464. programs are welcomed.
  465.  
  466.  
  467.  
  468.  
  469.      Additional Ordering Options:
  470.      ----------------------------------------------------------------------
  471.      CREDIT CARD ORDERS ONLY -
  472.      You may order a registered copy of this RCCO Research program
  473.      with MasterCard, Visa, Amex, or Discover from PsL, Public (software)
  474.      Library of Houston, Texas by calling 800-242-4775 or 713-524-6394,
  475.      or by FAX to 713-524-6398, or by CompuServe E-mail to 71355,470.
  476.      PsL's office hours are 7:00am to 6:00pm CST Monday-Thursday and
  477.      7:00am to 12:30pm CST on Fridays.  You may also mail credit card
  478.      orders to PsL at P.O. Box 35705, Houston, TX 77235-5705 (U.S.A).
  479.      Please include the cardholder name exactly as it appears on the
  480.      credit card plus the billing address for the card.
  481.  
  482.      PsL's item/product number for Visible::Serialization is #11763.
  483.  
  484.      THE ABOVE NUMBERS ARE FOR ORDERS ONLY.
  485.      Any questions about the status of the shipment of the order,
  486.      registration options, product details, technical support, volume
  487.      discounts, dealer pricing, site licenses, etc. must be directed in
  488.      writing to RCCO Research, P.O. Box 196, Gatlinburg, TN 37738.  To
  489.      ensure that you get the fastest possible delivery of your registered
  490.      copy, PsL will notify us the day of your order and we will promptly
  491.      ship the materials directly to you.  There are no additional fees
  492.      for ordering by credit card.
  493.  
  494.      Your credit card number is *not* transmitted to RCCO Research, but
  495.      rather is processed by PsL as part of their software registration
  496.      service.
  497.  
  498.      The above service is made available as a convenience to client
  499.      individuals who feel comfortable with ordering by telephone and
  500.      with a credit card.  Established concerns may prefer to order
  501.      directly from RCCO Research with the company's own business check.
  502.  
  503.      The PsL staff cannot answer non-order inquiries.
  504.      ----------------------------------------------------------------------
  505.  
  506.  
  507.  
  508.  
  509.  
  510. Additional Information
  511. -----------------------
  512. If you have any comments or questions regarding this program after (or with)
  513. registration, please send them to:
  514.  
  515.                               RCCO Research Associates
  516.                               P. O. Box 196
  517.                               Gatlinburg, TN 37738-0196
  518.                               (U.S.A.)
  519.  
  520. Please include your phone (day & evening) and fax (if any) numbers as well
  521. as your mailing address (and CompuServe number / Internet address, if any)
  522. on ALL written communications.  Please indicate the serial number from your
  523. registered copy of the program as well as your CustID number.  Our E-mail
  524. addresses are provided to registered users along with the invoice.
  525.  
  526.  
  527. RCCO Research is the publisher of Visible::Setup(tm) (a developers'
  528. installation utility for DOS applications used widely in many parts of the
  529. world), as well as several other popular development tools.  Please consult
  530. your favorite user-supported software source for the availability of these
  531. and other RCCO Research DOS and Windows programs.
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.  
  539. Visible::Serialization(tm)
  540. --------------------------
  541. developers' serialization utilities
  542.  
  543. append serial numbers (or other identifiers) to .exe files
  544.  
  545.  
  546.  
  547. (C) Copyright 1995 RCCO Research Associates
  548. All Rights Reserved under International Conventions
  549. Product of U.S.A.
  550.  
  551.  
  552.  
  553. RCCO Research Associates
  554. Post Office Box 196
  555. Gatlinburg, Tennessee 37738-0196
  556. (U.S.A.)
  557.  
  558.  
  559.                                     
  560.                      ┌─────────────────────────────────┐
  561.                      │     RCCO Research Associates    │
  562.                      │ Technical Publishers, Est. 1965 │
  563.                      └─────────────────────────────────┘
  564.  
  565.  
  566.